package com.douma.字符串;

import java.util.Scanner;

/**
 * 抖码算法，让算法学习变的简单有趣
 *
 * @作者 : 老汤
 */
public class Main_HJ10 {
    /*
    HJ10 字符个数统计
    描述
    编写一个函数，计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内( 0~127 ，包括 0 和 127 )，换行表示结束符，不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次
    例如，对于字符串 abaca 而言，有 a、b、c 三种不同的字符，因此输出 3 。

    数据范围： 1≤n≤500
    输入描述：
    输入一行没有空格的字符串。

    输出描述：
    输出 输入字符串 中范围在(0~127，包括0和127)字符的种数。

    示例1
        输入：
            abc
        输出：
            3

    示例2
        输入：
            aaa
        输出：
            1
     */
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String str = sc.nextLine();

        int res = 0;
        boolean[] visited = new boolean[128];
        for (char c : str.toCharArray()) {
            // 使用字符对应的 ascii 码作为数组的索引
            int index = c - ' '; // 空字符的 ascii 码是 0
            if (!visited[index]) {
                res++;
                visited[index] = true;
            }
        }

        System.out.println(res);
    }
}
